package com.yoda.controller;


import com.yoda.dto.RoleDto;
import com.yoda.dto.RolePageQuery;
import com.yoda.result.Result;
import com.yoda.service.ISysRoleService;
import com.yoda.vo.RoleListVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

/**
 * <p>
 * 角色表 前端控制器
 * </p>
 *
 * @author itcast
 * @since 2023-05-15
 */
@RestController
@RequestMapping("/sys_role")
public class SysRoleController {
    @Autowired
    private ISysRoleService service;

    /**
     * 角色列表-分页
     *
     * @param pageQuery
     * @return
     */
    @GetMapping("/list")
    public Result rolePageQuery(RolePageQuery pageQuery) {
        return service.rolePageQuery(pageQuery);

    }

    /**
     * 角色修改
     *
     * @param dto
     * @return
     */
    @PostMapping("/update")
    public Result updateRole(@RequestBody RoleListVo dto) {
        return service.updateRole(dto);
    }


    /**
     * 角色详情
     * @param id
     * @return
     */
    @GetMapping("/rowInfo")
    public Result rowInfo(String id) {
        return service.rowInfo(id);
    }


    /**
     * 角色列表-全部
     * @return
     */
    @GetMapping("/allData")
    public Result getAll() {
        return service.getAll();
    }

    /**
     * 角色添加
     *
     * @param dto
     * @return
     */
    @PostMapping("/add")
    public Result addRole(@RequestBody RoleDto dto) {
        return service.addRole(dto);
    }

    /**
     * 根据id删除角色
     * @param id
     * @return
     */
    @GetMapping("/del")
    public Result deleteById(String id) {
        return service.deleteById(id);
    }
}

